1. Field
The present invention generally relates to observing operation of a mobile device, and, more particularly, to testing the response of a mobile device to being linked to and unlinked from another device.
2. Description of Related Technology
Modern mobile devices such as media players and mobile phones utilize software in their operation. Errors or a lack of optimization in the software can cause negative device performance, for example causing the device to perform poorly, lock up, shut down, consume excess energy, or overheat. Software for mobile devices is generally developed separately from the mobile device itself, for example in integrated development environments that can be linked to the mobile device. Software can be loaded onto mobile devices prior to purchase by an end user. Such software can generally be debugged by professional developers prior to release, but end users lack effective tools for debugging software that they might later develop for the mobile device.
End user software developers typically run an integrated development environment on a development computer. The development computer can be linked to the mobile device such that applications can be transferred between the development computer and the mobile device. Applications can only be modified on the development computer, but applications can only be executed on the mobile device. The development computer may also collect real-time information about the device through the link. Thus, end users attempting to debug an application normally operate the mobile device, for example by interacting with a user interface (UI), while collecting information on the development computer. Upon encountering an error in the application, the user can look at the development computer to see whether the information is indicative of the problem. However, information about the mobile device is only gathered while the mobile device is linked to the development computer, such that the behavior of a mobile device in a normal operating state unlinked to a computer is unknown. Thus, development of applications for mobile devices can be difficult due to the complexity of various scenarios.